/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.ufps.cuatro.util.generadores;

import java.io.File;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.ufps.cuatro.util.Utileria;
import com.ufps.cuatro.util.base.ObjectBase;

/**
 *
 * @author Carlos A. Torres C. 
 */
public class ConfiguracionGeneradorCodigo extends ObjectBase{
    private static final long serialVersionUID = -7576183548384108308L;   
    
    //Modos de Generación de Código
    public final static int MODO_PREVIEW_COMPONENTE_GENERADOR_SIMPLE = 0;
    public final static int MODO_PREVIEW_COMPONENTE_GENERADOR_METODO = MODO_PREVIEW_COMPONENTE_GENERADOR_SIMPLE + 1;
    public final static int MODO_PREVIEW_COMPONENTE_GENERADOR_CLASE = MODO_PREVIEW_COMPONENTE_GENERADOR_METODO + 1;
    
    //Nombres Constantes para Previsualizaciones
    public final static String NAME_PREVIEW_PANEL = Utileria.leerRecursoTexto("Utileria.name.panel");
    public final static String NAME_PREVIEW_DIALOG = Utileria.leerRecursoTexto("Utileria.name.dialog");
    public final static String NAME_PREVIEW_FRAME = Utileria.leerRecursoTexto("Utileria.name.frame");
            
    public int modo;
    public TipoContenedor eContenedor;
    public String strNombreContenedor;
    public String strPlantilla;
    public String strUsuario;
    public String strNombreProyecto;
    public String strPathProyecto;
    public Date fecha;
    public File objFileSalida;
    public boolean comprimir;
    public boolean addResourcesToProject;
    public boolean compressProjectToZip;
    
    public Map<String, List<String>> objFunciones;
    public Map<String, Map<String, List<String>>> objMapaFunciones;

    public ConfiguracionGeneradorCodigo() {
        objFunciones = new HashMap<String, List<String>>();
        objMapaFunciones = new HashMap<String, Map<String, List<String>>>();
        fecha = new Date();
        comprimir = false;
        strUsuario = Utileria.leerRecursoTexto("Utileria.user");
        strPlantilla = Utileria.leerRecursoTexto("Utileria.template.panel");
        strNombreContenedor = NAME_PREVIEW_PANEL;
        addResourcesToProject = true;
        compressProjectToZip = false;
    }

    public ConfiguracionGeneradorCodigo(String strUsuario, String strNombreProyecto, String strPathProyecto, boolean comprimir) {
        this.strUsuario = strUsuario;
        this.strNombreProyecto = strNombreProyecto;
        this.strPathProyecto = strPathProyecto;
        this.comprimir = comprimir;
        objFunciones = new HashMap<String, List<String>>();
        objMapaFunciones = new HashMap<String, Map<String, List<String>>>();
        fecha = new Date();
        strPlantilla = Utileria.leerRecursoTexto("Utileria.template.panel");
        strNombreContenedor = NAME_PREVIEW_PANEL;
        addResourcesToProject = true;
        compressProjectToZip = false;
    }
    
    

    public Map<String, List<String>> getObjFunciones() {
        return objFunciones;
    }
    
    
    
}
